package crm.copy;

/**
 * 处理命令中字符串所附带的id name 等信息并做出相对应的输出
 * @author ZHUAN4
 *
 */
public class StringHandle {

	/**
	 * 判断后返回字符串str对应的int型整数
	 * 若str无法转换为int类型
	 * 返回-1（CustomerT 的 id 实例总是大于0的）
	 * @param str 输入字符串
	 * @return
	 */
	public static int getId(String str){
		if(IsInt.isInt(str)==false)
	    	return -1;
		else
		{
			String[] strs=str.split("");
			int sum=str.charAt(0)-48;
        	for(int i=1;i<strs.length-1;i++)
        	{
        		sum=sum*10;
        		sum+=(int)str.charAt(i)-48;
        	}
        	return sum;
		}
	}
	
	/**
	 * 返回str对应的name字符串
	 * @param str 输入字符串
	 * @return  name字符串
	 */
	public static String getName(String str){
		return str;	
	}
	
	/**
	 * 返回str字符串中解析出来的CustomerT对象
	 * @param str 输入字符串
	 * @returnCustomerT对象
	 */
	public static CustomerT getCustomer(String str){
		String[] strs=str.split(",");
		CustomerT temp=new CustomerT();
		int num=strs.length;
		for(int i=0;i<num;i++)
		{
			String[] strTemp=strs[i].split(":");
			if(strTemp[0].equals("name")&&strTemp.length==2)
				temp.setName(strTemp[1]);
			if(strTemp[0].equals("sex")&&strTemp.length==2&&(strTemp[1].equals("m")||strTemp[1].equals("w")))
				temp.setSex(strTemp[1]);
			if(strTemp[0].equals("birthday")&&strTemp.length==2)
				temp.setBirthday(strTemp[1]);
			if(strTemp[0].equals("address")&&strTemp.length==2)
				temp.setAddress(strTemp[1]);
			if(strTemp[0].equals("call")&&strTemp.length==2)
				temp.setCall(strTemp[1]);
		}	
		temp.setId(CustomerT.count);
		return temp;
		
	}
}
